R O B O T   R O B B E R Y   v 0 . 9 9

(c) 2001-2003 KeiProductions

Email: keithkosh@shaw.ca
  URL: robotrob.keikorner.cjb.net

_____________________________________________________________________________

S E C T I O N S

1. It's out!
2. What's needed to run Robot Robbery
3. Frequently Asked Questions
4. Known bugs
5. Secrets!!!
6. Creating your own levels
7. End thingie

_____________________________________________________________________________

1. It's out!

After a LONG delay, and pondering whether to port this game to C++ or not,
I decided to finish it in QBasic. FINALLY, it's finished, well, almost.
Version 0.99 simply means it's not as completed as I wanted it to be, with
things like gameplay and levels and whatnot. Especially levels. 3. That's
quite pathetic, really. But it's technically a finished game, so nyeah!

Some features include...

 - No EXE format. That's pretty lame. I think I crammed too much into the
   QBasic .BAS file. Well, there's a shortcut link, that SHOULD work...

 - An in-depth storyline. Not really. Although there's probably more cinema
   than gameplay, it's still kinda neat. 

 - Three levels, each with their own tileset. A far cry from the 8 levels
   through 4 worlds originally planned, but the gameplay can only go so far
   before it gets repetitive. So now each level is basically in its own
   world. (Good excuse!)

 - More nice graphical touches (can anyone say DYNAMIC DOOR FADING? How about
   REAL-TIME BLINKING in the cinemas?!) and PC sound effects.

 - Lovely PC speaker sound effects. Yuck. Now I know why people buy speakers.

 - NO ENDING CINEMA! This one is awful. I tried to put it in, but putting
   all the cinema code in the .BAS file and not externally was a bad idea,
   because I'm pretty much out of space now. There's still a LITTLE something
   to see if you finish the game (not a hard task, imho), so, yay. :P

The tile-by-tile scrolling is a little hard on the eyes, but I guess it
gets the job done. Gameplay becomes shallow pretty fast, I know, but that's
how the cookie crumbles. My next game will definitely incorporate more
levels and a much more enjoyable gaming experience. Or something like that.

_____________________________________________________________________________

2. What's needed to run Robot Robbery

If you want to get the most out of the game, hopefully you will have these:

 - A computer. (Good call)
 - At least 820 KB of disk space. (0.8 MB, roughly)
 - Windows, or DOS. But nobody has DOS anymore.
 - A keyboard. (Keys are optional...no, wait, they aren't.)
 - PC speaker support. I hope.
 - Oh, and a monitor.

That's about it. Not very demanding on resources, is it?...

Oh, yeah, and a mouse would be handy for editing and creating levels. Just
so you know. Like anyone will DO that. :P

_____________________________________________________________________________

3. Frequently Asked Questions

Q: I'll start out with something obvious: how do I play the game?

A: Unzip Robotrob.zip, hopefully into its own directory as there are a fair
   number of files packed together. You'll neet a unzipper which you can get
   for free from www.winzip.com. Or, if you have a new version of Windows,
   you can automatically unzip from inside Windows Explorer. Yup.

   Then just double-click on the convenient shortcut which conveniently
   says, "Play Robot Robbery". There ya go, now wasn't that convenient???

Q: No.

A: Oh...it wasn't? Hey! That wasn't a question!

Q: Oops. What I MEANT to say was, the SHORTCUT DOESN'T WORK!!!

A: Oh. See the question below then.

Q: Okay. Um, I don't have Windows. So how do I play the game?

A: First, let me shake my head at you because you don't have Windows.
   *shakes head at you because you don't have Windows* Or, if you have
   been redirected here from the previous question, let me shake your
   head at you because you broke the shortcut. *shakes head at you because
   you broke the shortcut* There we go. Anyway. Follow the following steps,
   and you'll be in, in no time.

   1. Start QBasic.exe, it was zipped up with the game and is in the Data
      folder.
   2. If a Windows command box pops up saying Command line parameters, or
      something similar, just hit OK.
   3. QBasic should load. Hit [Esc] to bypass the splash screen.
   4. Go File, Open. Yeah, with the mouse.
   5. Find the directory you unzipped the files to in the right box. Or just
      type it in, in the upper text box. Make sure you're also in the Data
      directory.
   6. Double-click on Robotrob.bas.
   7. Select Run, Start, or else hit Shift-F5, and the game will begin. (To
      quit after you are back in QBasic, just go File, Exit.)

Q: Ok, I want to play it, but what's this Directory Setup junk?

A: First of all, let me shake my head for you actually wanting to play the
   game. Next, this is just required to run the game. Put in the directory
   Robot Robbery was unzipped to, PLUS the DATA directory. (i.e,
   c:\Junk\RobotRob\Data) Don't worry if you make a mistake, the game will
   detect that. Once you get the right directory, the game will start, and
   you'll never hear from Mr. Directory Setup again. Unless you move the
   game to a new directory, but then you'll just have to input that once
   and that'll be it again.

Q: Yay, I got in!--

A: You're welcome.

Q: ...I wasn't finished. Uh, what are the keys?

A: Oh. You can access the keys by going to Help from the main menu...but here
   they are anyway. (these are the in-game keys)

   [Left Control] - Move Jeff left
   [Left Alt]     - Move Jeff right
   [Right Shift]  - Make Jeff jump / enter doors

   To clear this up, Left Control and Alt are the ones on the LEFT side of
   the keyboard, and Right shift is the one just below Enter on the RIGHT 
   side. Get it? Got it? Good!

   To navigate the menus just use the arrow keys and [Enter] to select.

   And to advance dialog in the cinemas (when the little arrow or little
   checkmark shows up) press [Enter] or [Space]. By the way, the little arrow
   means that the character who just said the text has more to say; the
   checkmark means that character has finished his/its lines for the moment.

Q: Now I know how to play the game. But I've seen this opening cinema slash
   in-between level cinema 1000 times, so how do I skip it?

A: Insted of pressing [Enter] or [Space] to advance the dialogue, press
   [Esc]. Ah, the wonders of the Escape key...

Q: Thanks. Here's another question. Why is there an extra Robot in the title
   screen? It doesn't appear in the game.

A: Well, I slowly found QBasic's 1.1's graphical limits, and one of them was
   array storage...too bad, though. I probably could have included it, but I
   also was thinking of room at the time for other graphics. The specific
   stand-up robot is, I guess, a sort of preview of what I could have added
   to the game...but didn't. Yeah.

Q: Hey, did you make all the graphics and levels yourself?

A: Yes - using KeiSprite Editor (which I also made as well)...the actual
   making of the graphics was one of the most time-consuming parts of this
   whole game. But it was fun. Then I used the level editor (which I coded
   myself too) and put together the levels.

Q: What are these "OTHER" .BAS files in the ZIP file???

A: See "4. Creating your own levels."

Q: Ok, what about all this OTHER JUNK in the ZIP file?!

A: They're files you need to play the game, sadly. Delete them, and you'll
   find out why they are required. Ha.

Q: How do I load a custom level and play it?

A: Select the second item from the menu, then type in the filename WITHOUT
   THE .DAT. For example, "mylevel". Then just hit Enter and let it load!

Q: What does the "In game delay" option on the main menu do?

A: Nothing. On new computers, it won't do a thing. It was SUPPOSED to delay
   the gameplay the higher the number got, but, well, it turns out the game
   plays at a fine speed even on a faster computer, so it's not really
   needed anyway. :P Makes the options menu look fuller, though. ;)

Q: I thourougly hated your game. Repetitive, ugly, boring. Much better than
   many mainstream games I TOTALLY detest. So when's the sequel?

A: Don't ask. Maybe in 10 years. And it WON'T be in QBasic, that much I KNOW.

Q: Does Jeff have sideburns?

A: Yes, very much so. His hair is very similar to Elvis' hair, except it's
   brown, and made of pixels.

Q: I like pickles!

A: No, PIXELS.

_____________________________________________________________________________

4. Known bugs

Sadly, the game's not perfect. If ya haven't figured THAT out yet, well, I
just told it to ya. So now you know. Anyway, there's still a few stupid bugs
in the game that I better write out and tell ya about, or something.

  o  Slowwwwwww music - I think this one's fixed, but it may pop up again.
     Under certain operating systems, especially Windows XP, the opening
     level music will slow down to a crawl. Hitting the [Enter] key over and
     over somehow fixes this bug. I still don't know why it did this.

  o  Bad Switches! - If you hit the Windows button on your keyboard, or
     accidently switch away from Robot Robbery to Windows, don't worry, or
     anything. The thing is, this sometimes causes Jeff to keep moving in
     the direction he was when you switched (causing him to walk right into
     a pit, for example), or, it will speed up the game and animation in a
     slightly weird way. Just close most applications when you play and it'll
     run better, probably anyway. :P

  o  Flicker or slowdown - There's still a slight bit of flicker, but that's
     always gonna be there. Faster computers shouldn't even notice it. Also,
     if there are quite a few enemies on the screen (about 5 or more), the
     game may slow down, especially in Icy Land. I haven't noticed this on
     my new computer, but on my older computer I have.

  o  Watch those keys - Not really a bug, but watch how many times you tap
     [Esc] to skip the opening cinema or level cinema. If you tap it more
     than once, when the level loads, it'll think you pressed Esc at that
     point. Luckily, the Quit prompt pops up, so you can press N to go back
     to the game. 
     Also, the spacebar is a little bit fussy when you're watching the
     cinemas. If you press and hold it down, it won't wait for it to go back
     up before advancing the text. So if you hold it down too long, you could
     end up missing a couple screens. Tap it quick and that fixes that!

_____________________________________________________________________________

5. Secrets!!!

WHAT'S THAT, you say? ROBOT ROBBERY HAS SECRETS? Well, sort of. Not very
many. I'll clue you in to a few of them, so, um...yes.

- There is a keyboard key not listed on the main menu that will do
  something...special. Yes. Special, indeed. Actually, it's not that
  impressive, but, oh, well.

- In-game, there is another key on the keyboard that will skip levels. 
  Whoopie, and I'm not telling you what it is. The game's not that hard, so
  you probably won't even need it. :P

- Level 1: The City - Couple of secrets here. #1, the wide open area with
  bonus items that are too high to reach -- look closely at the wall,
  because some of it may be..."jumpable", heheheh. And, #2, there's a little
  bonus area underneath where Jeff starts the level. This is almost the
  opposite of #1 -- a couple of well-placed wall tiles may not be as solid
  as they look. Try looking, again, for a slight break in the pattern.

- Level 2: Icy Land - Nothing. What a cheap level. Well, you probably knew
  this, but you have to get bounce off the robots on the top floor to reach
  some of the items. And to get past that last spikebot, you'll have to jump
  "strategically"...yeah, that's it. :P

- Level 3: RobBase - Straight-forward, till you get to the maze, which is
  actually easier than I thought it would be. If you want to know how to get
  through it, examine your surroundings. And careful at the end. YAY, YOU
  WON THE GAME!!!

____________________________________________________________________________

6. Creating your own levels

Yeah, "Start Keith's Sprite Editor" (KEISPRIT.BAS) and "Start Robot Robbery
Level Editor" (ROBEDIT.BAS) actually serve a purpose. Using a combination of
the two you can create your own external levels, and then play them in Robot
Robbery using the "Play external level" option from the main menu. They are
definitely not the most user-friendly, especially RobEdit, but they get the 
job done.

Here's a quick rundown to get you started on your own levels. Not that
anyone's going to even use this, but on the rare occassion someone is, it
could be useful. :P Note that Robot Robbery must have Directory setup run
first, before either of these programs will be able to run.

- RobEdit

To run, start the shortcut "Start Robot Robbery Level Editor". If that
doesn't work, use the steps above in the FAQ #3 to load QBasic, but load
RobEdit.bas instad of Robotrob.bas.

This is used for editing the individual level, as in, where everything is,
where the enemies are, etc. Upon running, you'll get asked the filename to
load. Every level file ends with a ".DAT" extention, so if you wanted to
load the first level of the game, you'd type in "level1.dat". To start a new
level, leave it blank and press Enter.

The program will ask you for a filename. Give your level an 8 digit filename
but make sure to end with ".DAT". For example, Funlevel.dat. (I am SO
creative) Now you'll be taken to the main screen.

Keys (you just might wanna keep this handy...):

Arrow keys - move highlighted box from tile to tile. Moving to any edge and
pressing the key again will scroll the level that direction unless it is
at the edge of the level.

G - Changes PUT mode from Foreground to Background, and back again. See
bottom right of screen for current status.

Space - places the specified tile down using the set parameter. If Put is
FG (see bottom right of screen) the Foreground tile currently selected will
be put down where the highlighted box is. If Put is BG the Background tile
will be put down. Note that if you put the main character down, he will be
put one level above where the highlighted box is. If you press Space to put
the main character down and he's ALREADY down in the same spot, he will
switch facing direction.

T - loads a new tileset. For example, CITY.PIC loads the City tileset, and
ICYLAND.PIC would load the Icy Land tileset. All tilesets must end in .PIC.
Note that Tilesets are NOT compatable with one another, i.e. you can't load
a CITY level and instantly change it to an ICE level without some seriously
out of place graphics.

Q and A - Q moves the Foreground tile to put ahead by one. A moves the
Foreground tile to put back by one. The bottom left of the screen will show
which foreground tile is currently selected and its number...

- 1 - 5 are items (default game items such as CDs and disks)
- 6 - 15 are custom foreground tiles from the current tileset (the background
  tile will show through wherever the tile is black)
- 16 and 17 are walking robots facing, respectively, left and right.
- 18 is the vertically scrolling spiked robot.
- 19 is the main character.

*IMPORTANT* 20 is ERASE. Even though other tiles may be blank, use this
foreground tile to erase any foreground items on-screen.

P and L - P moves the Background tile to put ahead by one. L moves the
Background tile to put back by one. The bottom center of the screen will
show the current background tile selected and its number...

- 1 is simply black or blank.
- 2 is the EXIT DOOR. Two of these must be placed on top of one another
  to form the two-tile high door for exiting the level. It also has to be
  on ground, or Jeff won't be able to go through it.
- 3 is the Exit sign, not necessarily needed, but helpful next to the door.
- 4 is sky.
- 48 - 57 are custom background tiles that the character can go through and
  CAN stand on, from the current tileset.
- 65 - 84 are custom background tiles the character can't go through, from
  the current tileset.
- 85 - 89 are custom background tiles the character loses a life if he steps
  or falls on, from the current tileset.
- 90 - 129 are custom background tiles that the character doesn't interact
  with (such as the clouds in the first level, or just plain scenery) from
  the current tileset.

S - Saves. Filename will be saved as shown at the top right of the screen.
*IMPORTANT* Save often. I think I worked out most of the kinks here, but
there are still some issues. ESPECIALLY with putting foreground tiles right
at the far bottom or far right of the level. I think they've been fixed,
but save all the time anyway. :P

. and , - The period key will add another level to the Y column (make your
level 1 tile bigger vertically) and the . key will remove a level from the Y
column (make your level 1 tile smaller vertically). Note the maximum height
of a level is 50, and the minimum is 12 (the height of the viewing screen).

> and < - The > key will add another level to the X column (make your level
1 tile bigger horizontally) and the < key will remove a level from the X
column (make your level 1 tile smaller horizontally). Note the maximum width
of a level is 250, and the minimum is 18 (the width of the viewing screen).

NOTE - When adding another row or column to the level, it will be FILLED
with the current background tile. So select the background tile that you want
to fill the area with before you add on to the width or height.

X - Sets the level to start in the current horizontal scrolling position,
i.e. the level will load showing what is currently shown left to right.

Y - Sets the level to start in the current vertical scrolling position,
i.e. the level will load showing what is currently shown top to bottom.

---

Some guidelines to consider...

- When setting "X" and "Y" your character should definitely be on-screen or
you'll get an error when playing the game. If he is close to one of the
edges, the game might scroll that way a little as soon as the level loads.

- You can have a maximum of 10 walking robots, and a maximum of 10 vertically
scrolling robots.

- SAVE OFTEN!

-------------------------

- KeiSprit.bas

Sure, you know how to make your own layout now, but you want to make your
own graphics! Well, use KeiSprit. Run "Start Keith's Sprite Editor", or load
KeiSprit.bas in QBasic. Once you first run it, hit OK. The rest
of the program's layout is pretty much self-explanatory, really. 

Always remember to go Palette, Open... and type in "ROBOTROB" and press
Enter. This will load the game's palette. Don't attempt to make your own
palette, or change ROBOTROB.PAL, because that will mess up the colors
in-game!!!

Now to the confusing part...the tileset format. Well, each tile is a 16 by
16 box. The tileset file contains tiles in rows sorted into the different
types of tiles. (Opening "CITY" will show an example of this).

The first two rows are for background graphics. That is, from (0,0) to
(320, 31), where each tile is 16 by 16. So the first tile would be from
(0,0) to (15, 15). The next tile would be from (16, 0) to (31, 15) and so on.
Up to 40 tiles (20 tiles per row).

The third row is for tiles the character can go through and CAN stand on.
Up to 10 tiles maximum, anything else past that point won't be used.

The fourth row is for tiles the character can't go through. Up to 20 tiles
maximum, so the whole row can be used for this.

The fifth row is for tiles the character loses a life if he steps on. Only
5 can be used maximum.

And the sixth row is for masked foreground tiles. Anything that is color
0 (black) on these tiles will be transparent so you can see the background
through them. Up to 10 tiles maximum.

It's confusing, but if you load "CITY" or any other tileset from the game
it should help.

NOTE: Colors 130 - 142 should NOT be used in any tiles. They are reserved
for the character...if the character blinks or fades, these colors will
be changed in-game.

Note also that the ZOOM tool is GREAT for editing tiles. Don't try and
edit from a far-out view. Using Zoom, if you position the box correctly,
you can edit exactly 4 tiles zoomed to a much more manageable size.

-------------------

And that's about it! Tons upon tons of writing, a terrible interface,
and tell me again why anyone would WANT to do this? Well, if someone
actually DID make a level, I'd put it right up on Robot Robbery Online
for all to download and stuff. There's a bit of a reason to do it, not
enough to push anyone over the top, but at least I can say I tried to
persuade people. :P
_______________________________________________________________________

7. End thingie

Anything you feel you gotta say? Just give me a quick mail at
keithkosh@shaw.ca. I'll most likely respond within the same day.

That's about it! Have fun with the game. Well, try. That's about the best
you can do. And everybody knows your best, is the best you can do. And
everybody knows it's bad to set unrealistic expectations. Like, for example,
an expectation that this is a fun game. Or something to that effect. I'm
just really taking up space now. I wonder if anyone will even read this.
I guess it doesn't make a difference. It really doesn't, actually. What
other people think of the game makes no difference at all to me, no sir.
I know it's bad, so a couple people saying it's not that bad aren't going
to change my opinion, not at all. 

Okay.

I'm done.

*END_OF_FILE


